////axios 的封装
import axios from 'axios'  //引入axios

////创建一个axios实例，说白了就是复制了一个axios
///通过这个实例去发送请求，把需要的配置给这个实例来处理
const request = axios.create({
    baseURL: 'http://api-toutiao-web.itheima.net',//请求的基础路径
    timeout: 10000,  ///ajax 发送时间限制
})
//http://api-toutiao-web.itheima.net


//请求拦截器

request.interceptors.request.use(
    // 任何所有请求会经过这里
    // config 是当前请求相关的配置信息对象
    // config 是可以修改的
    function (config) {
        const user = JSON.parse(window.localStorage.getItem('user'))

        // 如果有登录用户信息，则统一设置 token
        if (user) {
            config.headers.Authorization = `Bearer ${user.token}`
        }

        // 然后我们就可以在允许请求出去之前定制统一业务功能处理
        // 例如：统一的设置 token

        // 当这里 return config 之后请求在会真正的发出去
        return config
    },
    // 请求失败，会经过这里
    function (error) {
        return Promise.reject(error)
    }
)

//请求响应器
// http.interceptors.response.use(function (response) {


//     return response;
// }, function (error) {

//     return Promise.reject(error);
// });










//导出请求方法
export default request
// 谁需要使用就加载 request 模块